// let obj = {
//   uname: 'cuifan',
//   sayHello() {
//     console.log(this.uname);
//   }
// }

// obj.sayHello()

// function Person(name, age) {
//   this.name = name
//   this.age = age
// }

// let cuifan = new Person('cuifan',20)

// let cuifan = {
//   uname: 'cuifan',
//   testFunc: function() {
//     console.log(this.uname);
//     let testThis = function() {
//       console.log(this.uname);
//     }
//     testThis()
//   }
// }
// cuifan.testFunc()

// var uname = 'window'

// let cuifan = {
//   uname: 'cuifan',
//   testFunc: function() {
//     console.log(this.uname);
//     (function(self) {
//       console.log(self.uname);
//     })(this)
//   }
// }

// cuifan.testFunc()

// let cuifan = {
//   uname: 'cuifan',
//   testFunc: function() {
//     console.log(this.uname);
//     let testThis = () => {
//       console.log(this.uname);
//     }
//     testThis()
//   }
// }
// cuifan.testFunc()

// function foo() {
//   var myName = " 极客时间 "
//   let test1 = 1
//   const test2 = 2
//   var innerBar = {
//     setName: function(newName) {
//       myName = newName
//     },
//     getName: function() {
//       console.log(test1)
//       return myName
//     }
//   }
//   return innerBar
// }
// var bar = foo()
// bar.setName(" 极客邦 ")
// bar.getName()
// console.log(bar.getName())